An autonomous system refers to a network or a collection of networks that are administrated by a single entity or organization, e.g., an Internet service provider (ISP). Typically, an autonomous system is a heterogeneous network having many subnetworks with combined routing logic and common routing policies. An autonomous system usually uses multiple ingress and egress edge nodes to interface with other autonomous system. Outbound data traffic of the autonomous system goes through a designated egress edge node to reach the destination node in another autonomous system.
Border Gateway Protocol (BGP) is a standardized exterior gateway protocol designed to exchange routing and reachability information among autonomous systems on the Internet. The BGP is used to make routing decisions based on paths, network policies or rule-sets configured by a network administrator, and is involved in making core routing decisions. The BGP may also be used for routing within an autonomous system or across multiple autonomous systems.
Conventionally, an autonomous typically assigns a subnetwork or a set of associated network addresses to a specific edge node and broadcasts the assignment to all the coupled external autonomous systems according to the BGP. The assignment may result from a routing optimization process. Thus, for a particular source node in the autonomous system and a destination node in another autonomous system, the data transmission is routed through an assigned edge node.
Usually, the information of one autonomous system that is needed for routing determination is not readily available to another autonomous system, including a reassignment of the egress edge nodes. If the autonomous system switches to using another egress edge node for a particular subnetwork to improve network performance, the change has to be communicated to another autonomous system through broadcast again. Otherwise, inbound data traffic from another autonomous system still goes through the originally assigned edge node to reach the particular subnetwork. This makes the change of edge node ineffective in terms of network performance improvement.
Broadcasting an edge node selection in an autonomous system is usually directed to all the external autonomous systems. Frequent broadcasting is undesirable as it contributes to network traffic congestion. In addition, network performance is usually specific to a particular external autonomous system or a particular link. However, broadcasting the reassignment of the involved subnetwork to another edge node causes a substantial amount traffic that is unrelated to the particular external antonymous system or link to migrate to the selected edge node as well. Inevitably, this further counteracts the overall effect in network performance improvement.